import time
#编写一个函数show_time，接受参数num、delay、string
#函数的操作是打印"当前系统时间+string"，一共打印num次，每打印一次间隔delay秒
def show_time(num,delay,string):
    sys_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
    for i in range(1,num+1):
        s = f'{sys_time}\t{string}'
        print(s)
        time.sleep(delay)

#1、单线程：串行工作，先执行任务1，任务1完成之后再执行任务2
start = time.time()
show_time(5,1,'任务1')
show_time(3,2,'任务2')
end = time.time()
print(f'任务结束，消耗时间为{end-start:.2f}秒')

# #2、多线程：并行工作，任务1和任务2同时执行
import threading
start = time.time()
#创建线程
    #Thread(target=调用的函数名,args=(函数要接受的实参))
th1=threading.Thread(target=show_time,args=(3,2,'任务1'))
th2=threading.Thread(target=show_time,args=(5,1,'任务2'))
#执行线程
th1.start()
th2.start()
#合并结束线程
th1.join()
th2.join()
end=time.time()
#提示任务结束
print(f'任务并行结束，总耗时{end-start:.2f}秒')
